Balanced impedance method for differential signaling

ABSTRACT

A system and method for implementing a differential signaling driver with a common-mode voltage not equal to one half the power supply voltage using voltage-mode techniques. Embodiments of the present invention maintain balanced impedance at the signal output. In an embodiment, a driver may have multiple operating modes for each potential supply voltage or common-mode voltage. In an embodiment, each potential mode may involve configuring the driver by activating or deactivating switches or resistors in the driver and each potential mode may have different resistor values.

This application is a divisional of U.S. patent application Ser. No. 13/117,805 filed on May 27, 2011, the entire contents of which is incorporated herein by reference.

BACKGROUND

Aspects of the present invention relate generally to the field of data transmission and more specifically to differential signaling at the physical layer.

Conventionally, differential signaling provides for transmission of a single instance of information content from a driver to a receiver via a pair of transmitted signals having opposite state (e.g., data+ and data−). Differential signaling may be used in analog or digital systems and provides an efficient method of communication with low power dissipation and low susceptibility to electromagnetic interference. Differential signaling may be implemented at the physical layer using any of several standards including, for example, RS-422, USB, Serial ATA (SATA), FireWire, or HDMI.

Each of the various methods of implementing differential signaling may have different data transmission rates and output voltage specifications. For example, Low Voltage Differential Signaling (LVDS) provides a low power, high-speed transmission of data in the physical layer and is sometimes used in analog-to-digital converters and digital signal processors requiring high-speed data transmissions. A subLVDS driver is similar to LVDS, but with a smaller differential swing and a smaller common-mode voltage than a standard LVDS driver and is sometimes used in camera analog front-ends and image processors. For example, an LVDS driver may have a data rate up to 1.9 Gbps, a differential output swing of 350 mV and a common-mode voltage of 1.25V, whereas a subLVDS driver may have a data rate of 416 Mbps with a differential voltage swing of 150 mV and a fixed common-mode voltage of 0.9V.

In conventional LVDS and subLVDS drivers, the supply voltage is typically 2× the common-mode voltage. Thus, a conventional LVDS driver may have a fixed common-mode voltage of 1.25V with a supply voltage of 2.5V, and a subLVDS driver may have a common-mode voltage of 0.9V with a supply voltage of 1.8V. Because the ideal power supply for the system is not necessarily 2× the common-mode, a separate supply is often dedicated to the driver. As multiple supplies generally imply extra cost, board area, and additional circuit complexity, this can be undesirable. If current-mode techniques are used, using 2× the common-mode is more a convention than a requirement. However, since the trend is for lower system supply voltages, current-mode techniques can have significant headroom limitations. Voltage-mode techniques are well suited to low supply voltages, but conventional methods require a supply of 2× the common-mode voltage in order to have a balanced output impedance. Therefore while it is desirable to limit the number of supplies, it is often impractical using conventional methods.

FIG. 1 is a simplified circuit diagram illustrating components of a conventional current-mode driver 100 that may be used for differential signaling. In the example of FIG. 1, a current is driven through the circuit to implement a current-mode driver 100. As shown in FIG. 1, the current-mode driver 100 may include a pair of circuit paths each extending from a current source 105 to a current sink 106 and including respective output terminals 104 a, 104 b. Each circuit path may include a switch 101 a, 101 b extending between the respective output terminal 104 a, 104 b and the current source 105 and a switch 102 a, 102 b extending between the respective output terminal 104 a, 104 b and the current sink 106.

As shown in FIG. 1, the current-mode driver 100 may receive a pair of differential input signals D+ and D− and may output a pair of differential output signals OUT+ and OUT− in response. An input signal (say, D+) may be input to the switches 101 a, 102 a of a first path. Similarly, the other input signal D− may be input to the switches 101 b, 102 b of a second path. Thus, when a differential input signal is asserted to the current-mode driver 100, one of the input signals D+, D− will cause its associated switches to conduct a current through the termination resistor 107 to produce a fixed differential output voltage given by |v(OUT+)−v(OUT−)|. The common-mode voltage is given by (v(OUT+)+v(OUT−))/2, and may be set by a servo loop (not shown) or other method. Termination resistor 107 may be implemented separately from the current-mode driver 100, and a known or expected termination resistance may impact the design of the current-mode driver 100.

Conventional current-mode drivers, as the driver depicted in FIG. 1, may additionally require bias currents, bias current generators, and/or servo loops to operate properly. Additionally, with lower supply voltages, current-mode drivers may require larger output devices that can lead to increased supply/substrate noise due to their larger capacitance.

FIG. 2 is a simplified circuit diagram illustrating components of a conventional voltage-mode driver 200 that may be used for differential signaling. In the example of FIG. 2, rather than switching a current through the driver, the supply voltages V_(DD), V_(SS) are switched to implement a voltage-mode driver 200. As shown in FIG. 2, the voltage-mode driver 200 may include a pair of circuit paths each extending between a pair of supply voltages (V_(DD), V_(SS)) and including respective output terminals 204 a, 204 b. Each circuit path may include a switch 202 a, 202 b extending between the respective output terminal 204 a, 204 b and a first supply voltage V_(DD) and a switch 203 a, 203 b extending between the respective output terminal 204 a, 204 b and the second supply voltage V_(SS). The voltage-mode driver 200 further may include resistors 201 a, 201 b coupled between each output terminal 204 a, 204 b and one of the supply voltages.

As shown in FIG. 2, the voltage-mode driver 200 may receive a pair of differential input signals D+ and D− and may output a pair of differential output signals OUT+ and OUT− in response. An input signal (say, D+) may be input to the switches 202 b, 203 b of a first path. Similarly, the other input signal D− may be input to the switches 202 a, 203 a of a second path. Thus, when an input signal is asserted to the voltage-mode driver 200, one of the input signals D+, D− will cause its associated switches to conduct, which produces signal voltages on the output terminals 204 a, 204 b. Termination resistor 207 may be implemented separately from the driver.

However, conventional voltage-mode drivers, as the driver depicted in FIG. 2, are generally designed for a balanced output impedance which means that resistor 201 a equals resistor 201 b. Otherwise, the two output states would have different common-mode voltages, which may result in electromagnetic interference (EMI). Additionally, an unbalanced impedance may cause common-mode to differential conversion in the presence of unwanted common-mode signals. If resistors 201 a and 201 b are equal, it forces the common-mode voltage to equal one-half the supply voltage. This implies (for example) a 2.5V power supply for LVDS, and a 1.8V power supply for subLVDS. Accordingly, it may be desirable to implement a high-speed, differential signaling driver in voltage-mode with a single supply voltage not equal to 2× the common-mode voltage.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other aspects of various embodiments of the present invention will be apparent through examination of the following detailed description in conjunction with the accompanying figures. Similar reference numbers are used to indicate functionally similar elements.

FIG. 1 is a simplified circuit diagram illustrating components of a conventional current-mode driver.

FIG. 2 is a simplified circuit diagram illustrating components of a conventional voltage-mode driver.

FIG. 3 is a simplified block diagram illustrating components of an exemplary differential signaling system according to an embodiment of the present invention.

FIG. 4 is a simplified block diagram illustrating components of an exemplary system implementing a differential signaling driver according to an embodiment of the present invention.

FIG. 5 is a simplified circuit diagram illustrating components of an exemplary differential voltage-mode driver according to an embodiment of the present invention.

FIG. 6 is a simplified circuit diagram illustrating components of an exemplary differential voltage-mode driver according to an embodiment of the present invention.

FIG. 7 is a simplified flow diagram illustrating a method of configuring a differential voltage-mode driver according to an embodiment of the present invention.

FIG. 8 is a simplified block diagram illustrating components of an exemplary system implementing a programmable differential voltage-mode driver according to an embodiment of the present invention.

FIG. 9 is a simplified circuit diagram illustrating components of an exemplary differential voltage-mode driver according to an embodiment of the present invention.

FIG. 10 is a simplified circuit diagram illustrating components of a differential voltage-mode driver.

DETAILED DESCRIPTION

A voltage-mode differential signaling driver that maintains a balanced impedance at the signal output with a common-mode voltage not equal to one half the power supply voltage is implemented. This limits the traditional weaknesses of a differential signaling driver implemented with voltage-mode techniques. The outputs of the voltage-mode differential signaling driver may additionally operate at low supply voltages, and provide a simple driver design. Using voltage-mode rather than the conventional current-mode techniques provides for reduced complexity, smaller space requirements, less noise, the minimization of ESD spacing requirements, and lower headroom requirements.

Voltage-mode drivers may eliminate the conventional bias currents, bias current generators, servo loops, or other traditional components implemented to maintain proper common-mode in conventional current-mode drivers. Additionally, specialized high-voltage transistors and level shifters may be eliminated if different power supplies for the drivers and core circuitry are not required. Voltage-mode implementations may also allow for the elimination of large output devices, large pre-drivers, and support circuitry conventionally required for current-mode techniques that may lead to supply and substrate noise in some sensitive circuits. Additionally, series resistors present in many voltage-mode implementations can shunt ESD currents and eliminate large output transistors resulting from ESD spacing rules.

FIG. 3 is a simplified block diagram illustrating components of an exemplary differential signaling system 300 according to an embodiment of the present invention. As shown in FIG. 3, a differential signaling system 300 may include a driver 310, a receiver 320, and a pair of wires or other transmission lines 301 and 302 to transmit a pair of signals from the driver 310 to the receiver 320. A termination resistor, R_(T) 303, may be implemented to develop a signal at the receiver 320. Termination resistor R_(T) 303 may be implemented separately from the driver, at the receiver 320 for example. The driver 310 may then direct a current through the termination resistor 303, producing an output voltage V_(OD) of either + or −, representing a logic 1 or a logic 0. The receiver 320 may then interpret the signals as binary information.

FIG. 4 is a simplified block diagram illustrating components of an exemplary system 400 implementing a differential signaling driver according to an embodiment of the present invention. As shown in FIG. 4, an exemplary system 400 may include a sensor 410, an analog front-end circuit 420, and a digital signal processor (DSP) 430. The sensor 410 may be an analog sensor, including, for example, a charge-coupled device (CCD) or complementary metal-oxide semiconductor (CMOS) image sensor. The analog front-end 420 may include an analog-to-digital converter (ADC) 421 and a differential signaling interface 422. The differential signaling interface 422 may be a differential signaling driver to transmit the digitally converted signal to the DSP 430. The differential signaling interface outputs (OUT+ 401 and OUT− 402) may be transmitted on a pair of transmission lines to the DSP 430. Additionally, the analog front-end 420 may include a clock or other timing device, registers, additional analog-to-digital and digital-to-analog converters, and other components (not shown) to facilitate the front-end processing of the analog signal received from the sensor 410. The DSP 430 may be a digital image processor chip that performs digital processing and compression or other signal processor that performs other conventional digital signal processing techniques, including for example filtering and error correction.

FIG. 5 is a simplified circuit diagram illustrating components of an exemplary differential voltage-mode driver 500 according to an embodiment of the present invention. As shown in FIG. 5, the driver 500 may include a pair of circuit paths each extending between a pair of supply voltages (V_(DD), V_(SS)) and including respective output terminals 504 a, 504 b. Each circuit path may include a switch 505 a, 505 b and a resistor 501 a, 501 b extending between the respective output terminal 504 a, 504 b and a first supply voltage V_(DD) and a switch 506 a, 506 b and resistor 502 a, 502 b extending between the respective output terminal 504 a, 504 b and the second supply voltage V_(SS). As will be apparent to those skilled in the art, the driver 500 may be implemented with additional supply voltages (not shown). The driver 500 further may include a third resistor 503 a, 503 b coupled between each output terminal 504 a, 504 b and one of the supply voltages.

As shown in FIG. 5, the driver 500 may receive a pair of differential input signals D+ and D− and may output a pair of differential output signals OUT+ and OUT− in response. An input signal (say, D+) may be input to the switches 505 a, 506 a of a first path. Similarly, the other input signal D− may be input to the switches 505 b, 506 b of a second path. Thus, when a differential input signal is asserted to the driver 500, one of the input signals D+, D− will cause its associated switches to conduct, which produce signal voltages on the output terminals 504 a, 504 b. Resistors 503 a, 503 b are always conductive in this embodiment.

As shown in FIG. 5, an exemplary differential voltage-mode driver 500 is configured with a balanced output impedance and a common-mode voltage (V_(CM)) such that the supply voltage V_(DD)≠2×V_(CM). The driver 500 is implemented using voltage-mode techniques rather than the conventional current-mode techniques, such that instead of switching the signal current, the voltages V_(DD) and V_(SS) are switched and a resistor divider may develop a signal across the termination resistor 507. Termination resistor 507 may be implemented separately from the driver, and a known or expected termination resistance may impact the design of the driver or the selection of the remaining resistor values.

The driver's differential voltage swing V_(OD) and common mode voltage V_(CM) depend on the values of the resistors within the driver 500. In the embodiment of FIG. 5, where resistors 501 a and 501 b are equal to resistors 502 a and 502 b, the differential voltage swing V_(OD) and common mode voltage V_(CM) may be given as provided below in Equations 1 and 2:

$\begin{matrix} {V_{OD} = \frac{V_{DD}*R_{507}}{{2\; R_{501}} + {R_{507}\left( {1 + \frac{R_{501}}{R_{503}}} \right)}}} & {{Eq}.\mspace{14mu} 1} \\ {V_{CM} = {V_{DD}\left\lbrack {1 - \frac{R_{503}}{2\left( {R_{501} + R_{503}} \right)}} \right\rbrack}} & {{Eq}.\mspace{14mu} 2} \end{matrix}$

In the embodiment of FIG. 5, a balanced impedance at the outputs may be attained when resistors 501 a and 501 b are equal to resistors 502 a and 502 b. Consider an example where the D+ input is a high voltage level, which renders switches 505 a and 506 a conductive and, therefore the D− input causes switches 505 b and 506 b to be non-conductive. In this example, if R501 a, R501 b, R502 a, R502 b, R503 a, and R503 b are all equal, the resistance from output terminal 504 a to V_(DD) is half the resistance of resistor 503 a because resistors 501 a and 503 a are in parallel. The resistance from output terminal 504 b to the voltage supplies also is half the resistance of resistor 503 b because resistors 502 a and 503 b are effectively in parallel for output impedance purposes. Thus, the output impedances are balanced.

The driver 500 finds application in a variety of design environments. For example, in a subLVDS application, it is desired to provide differential signaling in which V_(OD) is 150 mV and V_(CM) is 0.9V. In an exemplary embodiment where resistors 501 a, 501 b, 502 a, 502 b, 503 a and 503 b each are set to 300Ω and termination resistor 507 is set to 100Ω, the driver meets this objective with V_(DD)=1.2V.

As noted, the resistance values present in the circuit may determine the differential voltage swing V_(OD) and common-mode voltage V_(CM) that will arise in operation. In some implementations, the resistance values may remain static once the driver 500 is fabricated in an integrated circuit. Circuit designers may select different resistance values to accommodate their own design goals. In other embodiments, as discussed below, the resistance values may vary dynamically during circuit operation. These embodiments permit circuit designers to provide differential voltage swings V_(OD) and common mode voltages V_(CM) that vary dynamically in response to different operating conditions of the driver.

FIG. 6 is a simplified circuit diagram illustrating components of an exemplary differential voltage-mode driver 600 according to an embodiment of the present invention. As shown in FIG. 6, the driver 600 may include a pair of circuit paths each extending between a pair of supply voltages (V_(DD), V_(SS)) and including respective output terminals 604 a, 604 b. Each circuit path may include a switch 605 a, 605 b and a resistor 601 a, 601 b extending between the respective output terminal 604 a, 604 b and the first supply voltage V_(DD), and a switch 606 a, 606 b and resistor 602 a, 602 b extending between the respective output terminal 604 a, 604 b and the second supply voltage V_(SS). The driver 600 further may include a third resistor 603 a, 603 b coupled between each output terminal 604 a, 604 b and one of the supply voltages.

As shown in FIG. 6, the driver 600 may receive a pair of differential input signals D+ and D− and may output a pair of different output signals OUT+ and OUT− in response. An input signal (say, D+) may be input to the switches 605 a, 606 a of a first path. Similarly, the other input signal D− may be input to the switches 605 b, 606 b of a second path. Thus, when a differential input signal is asserted to the driver 600, one of the input signals D+, D− will cause its associated switches to conduct, which produce signal voltages on the output terminals 604 a, 604 b. Resistors 603 a, 603 b are always conductive in this embodiment. In the embodiment of FIG. 6 a balanced impedance at the outputs may be attained when resistors 601 a and 601 b are equal to resistors 602 a and 602 b. Consider an example where the D+ input is a high voltage level, which renders switches 605 a and 606 a conductive and, therefore, the D− input causes switches 605 b and 606 b to be non-conductive. In this example, if R601 a, R601 b, R602 a, R602 b, R603 a, and R603 b are all equal, the resistance from output terminal 604 b to V_(SS) is half the resistance of resistor 603 a because resistors 602 a and 603 a are in parallel. The resistance from output terminal 604 a to the voltage supplies also is half the resistance of resistor 603 b because resistors 601 a and 603 b are effectively in parallel for output impedance purposes. Thus, the output impedances are balanced. In an exemplary embodiment where resistors 601 a, 601 b, 602 a, 602 b, 603 a and 603 b each are set to 300Ω and termination resistor 607 is set to 100Ω, the driver with a V_(DD)=1.2V will have a V_(OD)=150 mV and a V_(CM)=0.3V. Termination resistor 607 may be implemented separately from the driver as part of the receiver.

As previously noted, the resistance values present in the circuit may determine the differential voltage swing V_(OD) and common mode voltage V_(CM) that will arise in operation. In some implementations, the resistance values may remain static once the driver 600 is fabricated in an integrated circuit. In other embodiments the resistance values may vary dynamically during circuit operation. The variable resistor values may be set upon initialization of the driver according to calculated V_(OD) and V_(CM) requirements. In accordance with another embodiment, the variable resistor values may be selected from a multitude of predetermined values stored in local registers, where each value is selected to meet a specified V_(CM).

FIG. 7 is a simplified flow diagram illustrating a method 700 of configuring a differential voltage-mode driver according to an embodiment of the present invention. According to the method 700, to determine a configuration that may have a desired common-mode≠one half the supply voltage for a differential voltage driver, the desired supply voltage and common-mode voltage may first be selected (blocks 705-710). Then the resistor configuration and resistor values may be determined (block 715). For example, if a balanced output impedance should be maintained and if the common-mode voltage is greater than half the supply voltage, the resistors may be configured as in FIG. 5 and the resistor values set in accordance with Equation 1 and Equation 2. If, however, the common-mode voltage is less than half the supply voltage, the resistors may be configured as in FIG. 6. Other considerations may additionally influence the selected driver configuration. For example, if lower power is desired and the system is capable of tolerating a small amount of signal drift because the output signals don't completely settle, then some of the resistors may be set to infinite impedance, effectively removing a subset of the resistors from the driver. Alternatively, if power is available and a higher speed and lower output impedance is desired, additional switches and resistors may be activated in the driver. Then, once a configuration is selected, the differential voltage driver may be configured according to the determined resistor values (block 720).

FIG. 8 is a simplified block diagram illustrating components of an exemplary system 800 implementing a programmable differential voltage-mode driver according to an embodiment of the present invention. As shown in FIG. 8, an exemplary system 800 may include a sensor 810, an analog front-end circuit 820, and a digital signal processor (DSP) 830. The analog front-end 820 may include an analog-to-digital converter (ADC) 821, a programmable differential voltage-mode driver interface 822, a controller 823, and registers 825. The programmable differential voltage-mode driver interface 822 may be a differential signaling driver to transmit digitally converted signals to the DSP 830.

The programmable differential voltage-mode driver interface 822 may have multiple operational modes for he driver. The controller 823 may select one of the available operational modes and set the differential voltage-mode driver interface 822 configuration in accordance with the selected mode 824. Setting the differential voltage-mode driver interface 822 configuration may include activating or deactivating resistors or switches in the programmable differential voltage-mode driver interface 822 and setting the values of the activated resistors. The resistor values may be determined by the controller 823 or may be retrieved from the registers 825 for each mode. In an embodiment, the controller 823 may select from multiple potential resistor values stored in the registers 825 for each mode.

For example, in an exemplary embodiment, the programmable differential voltage-mode driver interface 822 may have three potential modes. A first mode may be associated with a driver configured in accordance with the driver depicted in FIG. 10. A second mode may be associated with a driver configured in accordance with the driver depicted in FIG. 5. And a third mode may have additional resistors and switches activated to utilize a different power supply (V_(DD)), a higher differential swing (V_(OD)), or a lower output impedance to facilitate higher data speeds. FIG. 9 illustrates a possible method for implementing programmability, though it will be recognized by someone skilled in the art that the exact configuration is dependent on specific application requirements. The differential voltage driver interface outputs (OUT+ 801 and OUT− 802) produced in accordance with the selected mode may be transmitted on a pair of transmission lines to the DSP 830.

FIG. 9 is a simplified circuit diagram illustrating components of an exemplary differential voltage-mode driver 900 according to an embodiment of the present invention. As shown in FIG. 9, the driver 900 may include a pair of circuit paths each extending between a pair of supply voltages (V_(DD), V_(SS)) and including respective output terminals 904 a, 904 b. Each circuit path may include switches 905 a, 905 b, 909 a and 909 b and resistors 901 a, 901 b, 908 a, and 908 b extending between the respective output terminal 904 a, 904 b and a first supply voltage V_(DD) and switches 906 a, 906 b, 910 a, and 910 b and resistors 902 a, 902 b, 903 a, and 903 b extending between the respective output terminal 904 a, 904 b and the second supply voltage V_(SS). The driver 900 may further contain a set of multiplexers (MUXes) 911 a, 911 b, 912 a, 912 b, 913 a, 913 b, 914 a and 914 b. Each MUX may have a selected mode input, the mode select determining whether the MUX output will be a D+, or D− as appropriate, or output V_(DD) to set the connected switch as statically conductive or V_(SS) to set the connected switch as statically non-conductive. Termination resistor 907 may be implemented separately from the driver, at the receiver for example.

As shown in FIG. 9, the driver 900 may receive a pair of differential input signals D+ and D− and may output a pair of differential output signals OUT+ and OUT− in response. Each input signal (say, D+) may be input to MUXes 911 a, 912 a, 913 a, and 914 a of a first circuit path. Then the mode select input may determine whether to pass that input signal to the connected switches 905 a, 906 a, 909 a, and 910 a or whether to set the switch as statically conductive or statically non-conductive. Similarly, the other input signal D− may be input to MUXes 911 b, 912 b, 913 b, and 914 b of a second circuit path with the mode select input to determine whether to pass that input signal to the connected switches 905 b, 906 b, 909 b, and 910 b. Then, for a given mode, any of the switches may be conductive, non-conductive, or receiving an input signal.

For example, if switches 909 a and 909 b are set by MUXes 913 a and 913 b with mode select 2 and mode select 6 respectively to be statically conductive, and switches 910 a and 910 b are set by MUXes 914 a and 914 b with mode select 4 and mode select 8 respectively to be statically non-conductive, the circuit will have the same characteristics as the driver shown in FIG. 5. Then, when a differential input signal is asserted to the driver 900, one of the input signals D+, D− will cause its associated switches to conduct, which produce signal voltages on the output terminals 904 a, 904 b. Resistors 908 a, 908 b are always conductive in this embodiment while resistors 903 a and 903 b are always non-conductive.

In another mode, if switches 909 a, 909 b, 910 a, and 910 b are set by MUXes 913 a, 913 b, 914 a, and 914 b with mode select 2, mode select 6, mode select 4, and mode select 8 respectively to be statically non-conductive, the circuit will have the same characteristics as the driver shown in FIG. 10. Then, when a differential input signal is asserted to the driver 900, one of the input signals D+, D− will cause its associated switches to conduct, which produce signal voltages on the output terminals 904 a, 904 b. The resistors 903 a, 903 b, 908 a, and 908 b are always non-conductive in this embodiment.

According to an embodiment of the invention, the resistors in driver 900 may be dynamically adjusted according to environmental or other factors to achieve a fixed common-mode voltage and/or differential voltage swing. For example, if the power supply voltage changes unexpectedly, the resistor values may be adjusted to accommodate the change and maintain the desired common-mode voltage. A controller (not shown) may be implemented to detect a change in the power supply voltage, or to detect a change in the common-mode voltage and/or differential voltage swing, and adjust the elements of the driver 900 accordingly.

FIG. 10 is a simplified circuit diagram illustrating components of a differential voltage-mode driver 1000. As shown in FIG. 10, the driver 1000 may include a pair of circuit paths each extending between a pair of supply voltages (V_(DD), V_(SS)) and including respective output terminals 1004 a, 1004 b. Each circuit path may include a switch 1005 a, 1005 b and a resistor 1001 a, 1001 b extending between the respective output terminal 1004 a, 1004 b and a first supply voltage V_(DD) and a switch 1006 a, 1006 b and resistor 1002 a, 1002 b extending between the respective output terminal 1004 a, 1004 b and the second supply voltage V_(SS).

As shown in FIG. 10, the driver 1000 may receive a pair of differential input signals D+ and D− and may output a pair of differential output signals OUT+ and OUT− in response. An input signal (say, D+) may be input to the switches 1005 a, 1006 a of a first path. Similarly, the other input signal D− may be input to the switches 1005 b, 1006 b of a second path. Thus, when a differential input signal is asserted to the driver 1000, one of the input signals D+, D− will cause its associated switches to conduct, which produce signal voltages on the output terminals 1004 a, 1004 b.

The driver's differential voltage swing V_(OD) and common mode voltage V_(CM) may depend on the values of the resistors within the circuit 1000. The resistors may therefore be set to achieve a specified common-mode voltage V_(CM) and differential voltage swing V_(OD). The differential voltage swing V_(OD) and common mode-voltage V_(CM) may be given as provided below in Equations 3 and 4:

$\begin{matrix} {V_{OD} = \frac{V_{DD}R_{1007}}{R_{1001} + R_{1002} + R_{1007}}} & {{Eq}.\mspace{14mu} 3} \\ {V_{CM} = \frac{V_{DD}\left( {R_{1002} + \frac{R_{1007}}{2}} \right)}{R_{1001} + R_{1002} + R_{1007}}} & {{Eq}.\mspace{14mu} 4} \end{matrix}$

Consider an example, where the D+ input is a high voltage level, which renders switches 1005 a and 1006 a conductive and, therefore, the D− input causes switches 1005 b and 1006 b to be non-conductive. In an embodiment with resistors 1001 set to 150Ω and resistors 1002 set to 550Ω and termination resistor 1007 set to 100Ω, V_(OD) is 150 mV and V_(CM) is 0.9V with V_(DD)=1.2V.

However, the voltage-mode technique for achieving a 0.9V common-mode voltage with a power supply not equal to 1.8V illustrated in FIG. 10 may result in an unbalanced impedance at the output and may not be desirable in systems requiring efficient signal settling. Unbalanced impedance at the output may additionally impact the accurate transmission of the differential signal, for example by converting common-mode noise caused by EMI interference to a differential signal. Additionally, the voltage in the depicted driver may pump due to different time constants to V_(DD) and V_(SS) and thereby cause a common-mode signal drift. An unbalanced output may also generate EMI interference. Therefore, the driver illustrated in FIG. 10 may not be effective in systems with a low tolerance for error or signal drift. Accordingly, a programmable differential voltage driver, as in FIG. 8, may utilize a mode that configures the voltage-mode driver in accordance with the driver depicted in FIG. 10 in limited situations.

Although the invention has been described above with reference to LVDS and subLVDS differential signaling drivers, other differential signaling methods may be implemented with the voltage-mode techniques as described above. Additionally, although the above described circuits have been depicted using switches and separate resistors, in one or more embodiments, the switches may be implemented with a transistor and a resistor or a portion of a resistor may be implemented with a switch as a transistor.

The foregoing discussion identifies functional blocks that may be used in analog signal processing systems constructed according to various embodiments of the present invention. In some applications, the functional blocks described herein above may be provided as elements of an integrated software system, in which the blocks may be provided as separate elements of a computer program. In other applications, the functional blocks may be provided as discrete circuit components of a processing system, such as functional units within a digital signal processor or application-specific integrated circuit. Still other applications of the present invention may be embodied as a hybrid system of dedicated hardware and software components. Moreover, the functional blocks described herein need not be provided as separate units. For example, although FIG. 8 illustrates the components of the analog front-end 820 such as the controller 823 and the programmable differential signaling interface 822 as separate units, in one or more embodiments, some or all of them may be integrated and they need not be separate units. Such implementation details are immaterial to the operation of the present invention unless otherwise noted above.

While the invention has been described in detail above with reference to some embodiments, variations within the scope and spirit of the invention will be apparent to those of ordinary skill in the art. Thus, the invention should be considered as limited only by the scope of the appended claims. 

We claim:
 1. A system comprising: a differential signaling driver having a plurality of variable resistors and a supply voltage, wherein the driver may be configured to develop a plurality of potential common-mode voltages such that at least one common-mode voltage deviates from one-half the supply voltage; and a controller to select one of the potential common-mode voltages and to set the variable resistors in accordance with the selected common-mode voltage.
 2. The system of claim 1 wherein the controller activates at least a subset of the resistors in accordance with the selected common-mode voltage.
 3. The system of claim 1 further comprising: a set of registers to store a plurality of resistor values; wherein each potential common-mode voltage corresponds to at least one of the plurality of resistor values and the controller sets the variable resistors in accordance with the value from the register corresponding to the selected common-mode voltage.
 4. The system of claim 1 wherein the controller sets the variable resistors such that the driver has output terminals with balanced impedance.
 5. A system comprising: an analog source; an analog signal processor to convert an analog signal from the analog source into a digital signal and to transmit the digital signal using a voltage-mode differential signaling driver; and a digital signal processor to process the digital signal received from the voltage-mode differential signaling driver; wherein the voltage-mode differential signaling driver has a common-mode voltage that deviates from one-half of a supply voltage; wherein the resistor values are set such that the driver has balanced output impedance.
 6. A method of configuring a voltage-mode differential driver comprising: selecting with a controller a supply voltage and a common-mode voltage, wherein the selected common-mode deviates from one half the supply voltage; activating with the controller a plurality of resistors in the driver to achieve the selected common-mode voltage; and selecting with the controller, values for the plurality of resistors to achieve the selected common-mode voltage; wherein the resistor values are set such that the driver has balanced output impedance.
 7. The method of claim 6 further comprising: activating at least one of a plurality of switches in the driver to achieve the selected common-mode voltage.
 8. The method of claim 6 further comprising: detecting with the controller a change in the common-mode voltage; and adjusting with the controller the values for the plurality of resistors to maintain the selected common-mode voltage.
 9. The method of claim 6 further comprising: detecting with the controller a change in the supply voltage; and adjusting with the controller the values for the plurality of resistors to maintain the selected common-mode voltage.
 10. A method comprising: selecting one of a plurality of modes for a differential signaling driver; activating at least one of a plurality of switches in the driver in accordance with the selected mode; activating at least one of a plurality of resistors in the driver in accordance with the selected mode; wherein the selected mode specifies a supply voltage and a common-mode voltage, the common-mode voltage deviates from one half the supply voltage; and wherein the selected mode specifies values for the plurality of resistors. 